/*
 * 版权所有 (C) 2015 知启蒙(ZHIQIM) 保留所有权利。[遇见知启蒙，邂逅框架梦]
 * 
 * https://zhiqim.org/project/zhiqim_framework/zhiqim_kernel.htm
 *
 * Zhiqim Kernel is licensed under Mulan PSL v2.
 * You can use this software according to the terms and conditions of the Mulan PSL v2.
 * You may obtain a copy of Mulan PSL v2 at:
 *          http://license.coscl.org.cn/MulanPSL2
 * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
 * EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
 * MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
 * See the Mulan PSL v2 for more details.
 */
package org.zhiqim.kernel.constants;

import org.zhiqim.kernel.annotation.AnAlias;

/**
 * 美国信息交换标准代码(American Standard Code for Information Interchange)
 * 以下为ASCII字符集表(与ANSI字符集中的前面128个(0-127)字符相同。)
 * 
 * @version v1.0.0 @author zouzhigang 2014-3-21 新建与整理
 */
@AnAlias("AsciiConstants")
public interface AsciiConstants
{
    /******************************************************************/
    //0-31为控制符，也是空白符，trim()时会和空格一起被清除
    /******************************************************************/
    
    /** 0 NUL(null) 空字符 */
    char _NUL_                                       = 0;
    
    /** 1 SOH(start of headline) 标题开始 */
    char _SOH_                                       = 1;
    
    /** 2 STX (start of text) 正文开始 */
    char _STX_                                       = 2;
    
    /** 3 ETX(end of text) 正文结束 */
    char _EXT_                                       = 3;
    
    /** 4 EOT (end of transmission) 传输结束 */
    char _EOT_                                       = 4;
    
    /** 5 ENQ (enquiry) 请求 */
    char _ENQ_                                       = 5;
    
    /** 6 ACK (acknowledge) 收到通知 */
    char _ACK_                                       = 6;
    
    /** 7 BEL (bell) 响铃 */
    char _BEL_                                       = 7;
    
    /** 8 BS (backspace) 退格 */
    char _BS_                                        = '\b';
    
    /** 9 HT (horizontal tab) 水平制表符 */
    char _HT_                                        = '\t';
    
    /** 10 LF (NL line feed, new line) 换行键 */
    char _LF_                                        = '\n';
    
    /** 11 VT (vertical tab) 垂直制表符 */
    char _VT_                                        = 11;
    
    /** 12 FF (NP form feed, new page) 换页键 */
    char _FF_                                        = '\f';
    
    /** 13 CR (carriage return) 回车键 */
    char _CR_                                        = '\r';
    
    /** 14 SO (shift out) 不用切换 */
    char _SO_                                        = 14;
    
    /** 15 SI (shift in) 启用切换 */
    char _SI_                                        = 15;
    
    /** 16 DLE (data link escape) 数据链路转义  */
    char _DLE_                                       = 16;
    
    /** 17 DC1 (device control 1) 设备控制1 */
    char _DC1_                                       = 17;
    
    /** 18 DC2 (device control 2) 设备控制2 */
    char _DC2_                                       = 18;
    
    /** 19 DC3 (device control 3) 设备控制3 */
    char _DC3_                                       = 19;
    
    /** 20 DC4 (device control 4) 设备控制4 */
    char _DC4_                                       = 20;
    
    /** 21 NAK (negative acknowledge) 拒绝接收 */
    char _NAK_                                       = 21;
    
    /** 22 SYN (synchronous idle) 同步空闲  */
    char _SYN_                                       = 22;
    
    /** 23 ETB (end of trans. block) 传输块结束 */
    char _ETB_                                       = 23;
    
    /** 24 CAN (cancel) 取消 */
    char _CAN_                                       = 24;
    
    /** 25 EM (end of medium) 介质中断 */
    char _EM_                                        = 25;
    
    /** 26 SUB (substitute) 替补 */
    char _SUB_                                       = 26;
    
    /** 27 ESC (escape) 换码(溢出) */
    char _ESC_                                       = 27;
    
    /** 28 FS (file separator) 文件分割符 */
    char _FS_                                        = 28;
    
    /** 29 GS (group separator) 分组符 */
    char _GS_                                        = 29;
    
    /** 30 RS (record separator) 记录分离符 */
    char _RS_                                        = 30;
    
    /** 31 US (unit separator) 单元分隔符 */
    char _US_                                        = 31;
    
    /******************************************************************/
    //32-47为常用符和计算符
    /******************************************************************/
    
    /** 32 space 空格 */
    char _SPACE_                                     = ' ';
    
    /** 33 ! 感叹号 */
    char _EXCLAMATION_                               = '!';
    
    /** 34 " 双引号 */
    char _DOUBLE_QUOTE_                              = '\"';
    
    /** 35 # 井号，数字代换号、英镑等，有代表的如C#叫c sharp和pound Please input your password, press the key well confirme */
    char _SHARP_                                     = '#';
    
    /** 36 $ 美元号 */
    char _DOLLAR_                                    = '$';
    
    /** 37 % 百分号 */
    char _PERCENT_                                   = '%';
    
    /** 38 & 和与号，ampersand;and;reference;ref和；引用英['æmpəsænd]   美['æmpərsænd]  */
    char _AMPERSAND_                                 = '&';
    
    /** 39 ' 单引号 */
    char _QUOTE_                                     = '\'';
    
    /** 40 ( 左括号 */
    char _OPEN_PARENTHESIS_                          = '(';
    
    /** 41 ) 右括号 */
    char _CLOSE_PARENTHESIS_                         = '(';
    
    /** 42 * 星号、乘号，又用于指针等asterisk;multiply;star;pointer */
    char _ASTERISK_                                  = '*';
    
    /** 43 + 加号 */
    char _PLUS_                                      = '+';
    
    /** 44 , 逗号 */
    char _COMMA_                                     = ',';
    
    /** 45 - 减号、负号 */
    char _MINUS_                                     = '-';
    
    /** 46 . 点号、句号，period; dot */
    char _DOT_                                       = '.';
    
    /** 47 / 顺斜杠，slash; divide; oblique 斜线；斜杠；除号 */
    char _SLASH_                                     = '/';
    
    /******************************************************************/
    //48-57为数字
    /******************************************************************/
    
    char _0_                                         = '0';//48 0
    char _1_                                         = '1';//49 1
    char _2_                                         = '2';//50 2
    char _3_                                         = '3';//51 3
    char _4_                                         = '4';//52 4
    char _5_                                         = '5';//53 5
    char _6_                                         = '6';//54 6
    char _7_                                         = '7';//55 7
    char _8_                                         = '8';//56 8
    char _9_                                         = '9';//57 9
    
    /******************************************************************/
    //58-64为常用比较计算符
    /******************************************************************/
    
    /** 58 : 冒号 */
    char _COLON_                                     = ':';
    
    /** 59 ; 分号 */
    char _SEMICOLON_                                 = ';';
    
    /** 60 < 小于号 */
    char _LESS_                                      = '<';
    
    /** 61 = 相等赋值号 */
    char _EQUAL_                                     = '=';
    
    /** 62 > 大于号 */
    char _GATHER_                                    = '>';
    
    /** 63 ? 问号 */
    char _QUESTION_                                  = '?'; 
    
    /** 64 @ 邮箱地址号 */
    char _AT_                                        = '@';
    
    /******************************************************************/
    //65-90为大写字母
    /******************************************************************/
    
    char _A_                                         = 'A';//65 A
    char _B_                                         = 'B';//66 B
    char _C_                                         = 'C';//67 C
    char _D_                                         = 'D';//68 D
    char _E_                                         = 'E';//69 E
    char _F_                                         = 'F';//70 F
    char _G_                                         = 'G';//71 G
    char _H_                                         = 'H';//72 H
    char _I_                                         = 'I';//73 I
    char _J_                                         = 'J';//74 J
    char _K_                                         = 'K';//75 K
    char _L_                                         = 'L';//76 L
    char _M_                                         = 'M';//77 M
    char _N_                                         = 'N';//78 N
    char _O_                                         = 'O';//79 O
    char _P_                                         = 'P';//80 P
    char _Q_                                         = 'Q';//81 Q
    char _R_                                         = 'R';//82 R
    char _S_                                         = 'S';//83 S
    char _T_                                         = 'T';//84 T
    char _U_                                         = 'U';//85 U
    char _V_                                         = 'V';//86 V
    char _W_                                         = 'W';//87 W
    char _X_                                         = 'X';//88 X
    char _Y_                                         = 'Y';//89 Y
    char _Z_                                         = 'Z';//90 Z
    
    /******************************************************************/
    //91-96为非常用计算符
    /******************************************************************/
    
    /** 91 [ 左方括号 */
    char _OPEN_BRACKET_                              = '[';
    
    /** 92 \ 反斜杠,转义符backslash;sometimes escape反斜线转义符；有时表示转义符或续行符 */
    char _BACK_SLASH_                                = '\\';
    
    /** 93 ] 右方括号 */
    char _CLOSE_BRACKET_                             = ']';
    
    /** 94 ^ 乘方号，按位异等 */
    char _CARET_                                     = '^'; 
    /** 95 _  下划线 */
    char _UNDERLINE_                                 = '_';
    
    /** 96 ` 撇号、分词号、省字符 apostrophe 英 [əˈpɒstrəfi]     美[əˈpɑstrəfi] */
    char _APOSTROPHE_                                = '`';
    
    /******************************************************************/
    //97-122为小写字母
    /******************************************************************/
    
    char _a_                                         = 'a';//97 a
    char _b_                                         = 'b';//98 b
    char _c_                                         = 'c';//99 c
    char _d_                                         = 'd'; //100 d
    char _e_                                         = 'e';//101 e
    char _f_                                         = 'f';//102 f
    char _g_                                         = 'g';//103 g
    char _h_                                         = 'h';//104 h
    char _i_                                         = 'i';//105 i
    char _j_                                         = 'j';//106 j
    char _k_                                         = 'k';//107 k
    char _l_                                         = 'l';//108 l
    char _m_                                         = 'm';//109 m
    char _n_                                         = 'n';//110 n
    char _o_                                         = 'o';//111 o
    char _p_                                         = 'p';//112 p
    char _q_                                         = 'q';//113 q
    char _r_                                         = 'r';//114 r
    char _s_                                         = 's';//115 s
    char _t_                                         = 't';//116 t
    char _u_                                         = 'u';//117 u
    char _v_                                         = 'v';//118 v
    char _w_                                         = 'w';//119 w
    char _x_                                         = 'x';//120 x
    char _y_                                         = 'y';//121 y
    char _z_                                         = 'z';//122 z
    
    /******************************************************************/
    //123-127为右侧非常用符
    /******************************************************************/
    
    /** 123 { 左花括号 */
    char _OPEN_BRACE_                                = '{';
    
    /** 124 | 竖杠 */
    char _VERTICAL_BAR_                              = '|';
    
    /** 125 } 右花括号 */
    char _CLOSE_BRACE_                               = '{';
    
    /** 126 ~ 波浪号 */
    char _TILDE_                                     = '~';
    
    /** 127 DEL 删除键 */
    char _DEL_                                       = 127;

    /******************************************************************/
    //128-255 增补的字符
    /******************************************************************/
    
    //128-160为空
    char _128_                                       = 128;
    char _160_                                       = 160;
    
    //161-255符号
    char _161_                                       = '¡';
    char _162_                                       = '¢';
    char _163_                                       = '£';
    char _164_                                       = '¤';
    char _165_                                       = '¥';
    char _166_                                       = '¦';
    char _167_                                       = '§';
    char _168_                                       = '¨';
    char _169_                                       = '©';
    char _170_                                       = 'ª';
    char _171_                                       = '«';
    char _172_                                       = '¬';
    char _173_                                       = '­';
    char _174_                                       = '®';
    char _175_                                       = '¯';
    char _176_                                       = '°';
    char _177_                                       = '±';
    char _178_                                       = '²';
    char _179_                                       = '³';
    char _180_                                       = '´';
    char _181_                                       = 'µ';
    char _182_                                       = '¶';
    char _183_                                       = '·';
    char _184_                                       = '¸';
    char _185_                                       = '¹';
    char _186_                                       = 'º';
    char _187_                                       = '»';
    char _188_                                       = '¼';
    char _189_                                       = '½';
    char _190_                                       = '¾';
    char _191_                                       = '¿';
    char _192_                                       = 'À';
    char _193_                                       = 'Á';
    char _194_                                       = 'Â';
    char _195_                                       = 'Ã';
    char _196_                                       = 'Ä';
    char _197_                                       = 'Å';
    char _198_                                       = 'Æ';
    char _199_                                       = 'Ç';
    char _200_                                       = 'È';
    char _201_                                       = 'É';
    char _202_                                       = 'Ê';
    char _203_                                       = 'Ë';
    char _204_                                       = 'Ì';
    char _205_                                       = 'Í';
    char _206_                                       = 'Î';
    char _207_                                       = 'Ï';
    char _208_                                       = 'Ð';
    char _209_                                       = 'Ñ';
    char _210_                                       = 'Ò';
    char _211_                                       = 'Ó';
    char _212_                                       = 'Ô';
    char _213_                                       = 'Õ';
    char _214_                                       = 'Ö';
    char _215_                                       = '×';
    char _216_                                       = 'Ø';
    char _217_                                       = 'Ù';
    char _218_                                       = 'Ú';
    char _219_                                       = 'Û';
    char _220_                                       = 'Ü';
    char _221_                                       = 'Ý';
    char _222_                                       = 'Þ';
    char _223_                                       = 'ß';
    char _224_                                       = 'à';
    char _225_                                       = 'á';
    char _226_                                       = 'â';
    char _227_                                       = 'ã';
    char _228_                                       = 'ä';
    char _229_                                       = 'å';
    char _230_                                       = 'æ';
    char _231_                                       = 'ç';
    char _232_                                       = 'è';
    char _233_                                       = 'é';
    char _234_                                       = 'ê';
    char _235_                                       = 'ë';
    char _236_                                       = 'ì';
    char _237_                                       = 'í';
    char _238_                                       = 'î';
    char _239_                                       = 'ï';
    char _240_                                       = 'ð';
    char _241_                                       = 'ñ';
    char _242_                                       = 'ò';
    char _243_                                       = 'ó';
    char _244_                                       = 'ô';
    char _245_                                       = 'õ';
    char _246_                                       = 'ö';
    char _247_                                       = '÷';
    char _248_                                       = 'ø';
    char _249_                                       = 'ù';
    char _250_                                       = 'ú';
    char _251_                                       = 'û';
    char _252_                                       = 'ü';
    char _253_                                       = 'ý';
    char _254_                                       = 'þ';
    char _255_                                       = 'ÿ';
    
    /******************************************************************/
    //其他常用到的键
    /******************************************************************/
    
    /** 中文空格 */
    int _SPACE_ZH_                                   = 12288;//0x3000
    
    /** BOM开头空格，UTF-8,UTF-16存在 */
    int _SPACE_BOM_                                  = 65279;//0xFEFF;
    
    /** Ctrl键 */
    int _CTRL_                                       = 262144;//0x00040000
    
    /** Shift键 */
    int _SHIFT_                                      = 131072;//0x00020000
}
